PosFuzz: augmenting greybox fuzzing with effective position distribution
نویسندگان
چکیده
Abstract Mutation-based greybox fuzzing has been one of the most prevalent techniques for security vulnerability discovery and a great deal research work proposed to improve both its efficiency effectiveness. generates input cases by mutating seed, i.e., applying sequence mutation operators randomly selected positions seed. However, existing fruitful focuses on scheduling operators, leaving schedule as an overlooked aspect efficiency. This paper proposes novel method, PosFuzz, that statistically schedules based their historical performance. PosFuzz makes use concept effective position distribution represent semantics guide mutations. first utilizes Good-Turing frequency estimation calculate each operator. It then leverages two sampling methods in different stages select from distribution. We have implemented top AFL, AFLFast MOPT, called Pos-AFL, -AFLFast -MOPT respectively, evaluated them UNIFUZZ benchmark (20 widely used open source programs) LAVA-M dataset. The result shows that, under same testing time budget, outperform counterparts code coverage ability. Compared with AFLFast, gets 21% more edge finds 133% paths average. also triggers 275% unique bugs
منابع مشابه
Reviewing KLEE's Sonar-Search Strategy in Context of Greybox Fuzzing
Automatic test-case generation techniques of symbolic execution and fuzzing are the most widely used methods to discover vulnerabilities in, both, academia and industry. However, both these methods suffer from fundamental drawbacks that stop them from achieving high path coverage that may, consequently, lead to discovering vulnerabilities at the numerical scale of static analysis. In this prese...
متن کاملDriller: Augmenting Fuzzing Through Selective Symbolic Execution
Memory corruption vulnerabilities are an everpresent risk in software, which attackers can exploit to obtain unauthorized access to confidential information. As products with access to sensitive data are becoming more prevalent, the number of potentially exploitable systems is also increasing, resulting in a greater need for automated software vetting tools. DARPA recently funded a competition,...
متن کاملFuzzing with Code Fragments (-2)
Fuzz testing is an automated technique providing random data as input to a software system in the hope to expose a vulnerability. In order to be effective, the fuzzed input must be common enough to pass elementary consistency checks; a JavaScript interpreter, for instance, would only accept a semantically valid program. On the other hand, the fuzzed input must be uncommon enough to trigger exce...
متن کاملImproving Fuzzing with Symbolic Execution
Fuzzing is a great technique to, for example, discover and reproduce software system vulnerabilities. However, there exist problems with finding test inputs for complex checks (e.g., string equality checks). A recent approach proposes to combine fuzzing techniques with symbolic execution to effectively tackle this problem [1]. The student should examine and discuss the approach given in the pap...
متن کاملDistributed evolutionary fuzzing with Evofuzz
This paper describes the design of a tool (called Evofuzz) that implements the technique of evolutionary (or coverage-guided) fuzzing in a scalable, distributed manner. The architecture, design-choices and implementation specifics of this tool are examined, explained and criticized. After outlining possible improvements and future work that is not yet completed, the paper finishes by presenting...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Cybersecurity
سال: 2023
ISSN: ['2523-3246']
DOI: https://doi.org/10.1186/s42400-023-00143-2